home *** CD-ROM | disk | FTP | other *** search
/ Dennis Miller's That's Geek to Me / Dennis Miller - That's Geek to Me (1995)(Sanctuary Woods Multimedia).iso / mac / SWMC.MST < prev    next >
Text File  |  1995-02-18  |  12KB  |  370 lines

  1.  
  2.  
  3. '**************************************************************************
  4. '*                   That's Geek To Me Setup
  5. '**************************************************************************
  6.  
  7. '*      Last Modified   Mar. 14, 1994
  8. '*      original by Taranjeet S. Athwal
  9. '*      modified by Geek Matt Powell
  10. '*      Quicktime installation by Robert Bierman
  11.  
  12. '$DEFINE DEBUG  ''Define for script development/debugging
  13.  
  14. '$INCLUDE 'setupapi.inc'
  15. '$INCLUDE 'msdetect.inc'
  16. '$INCLUDE 'qtdetect.inc'
  17.  
  18. ''Dialog ID's
  19. CONST WELCOME        = 100
  20. CONST ASKQUIT        = 200
  21. CONST DESTPATH        = 300
  22. CONST EXITFAILURE    = 400
  23. CONST EXITQUIT        = 600
  24. CONST EXITSUCCESS    = 700
  25. CONST OPTIONS        = 800
  26. CONST APPHELP        = 900
  27. CONST PROCEED        = 1003
  28. CONST CANCEL        = 1004
  29. CONST READQT        = 1200
  30. CONST READNOW        = 1204
  31. CONST CONTINUE        = 1205
  32. CONST WORKING        = 1400
  33. CONST INSTALLED     = 1500
  34. CONST SEARCH        = 1600
  35. CONST OLDVERSION    = 1700
  36. CONST QT_NOT_FOUND    = 1800
  37. CONST INSTALLED_LEFTQT    = 2100
  38. CONST ROOTPATH        = 2200
  39. CONST QT_DETAILS    = 2300
  40. CONST INSTALLEDQT    = 3000
  41. CONST BADPATH        = 6400
  42.  
  43. ''Bitmap ID
  44. CONST LOGO = 1
  45.  
  46. ''File Types
  47. CONST APPFILES       = 1
  48. CONST OPTFILES1    = 2
  49. CONST OPTFILES2    = 3
  50.  
  51. GLOBAL DEST$        ''Default destination directory.
  52.  
  53. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  54. DECLARE FUNCTION RunProgram LIB "mscuistf.dll" (sz$) AS INTEGER
  55. DECLARE FUNCTION GetFirstChar LIB "mscuistf.dll" (sz$) AS INTEGER
  56.  
  57. INIT:
  58.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  59.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  60.  
  61.     SetBitmap CUIDLL$, LOGO
  62.     SetTitle "That's Geek To Me Setup"
  63.  
  64.     GOTO INSTALL
  65.  
  66. '$IFDEF DEBUG
  67.     i% = SetSizeCheckMode(scmOnIgnore)      '' could use scmOff; def = scmOnFatal
  68.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  69.     IF IsDriveValid(WinDrive$) = 0 THEN
  70.     i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  71.     GOTO QUIT
  72.     END IF
  73. '$ENDIF ''DEBUG
  74.  
  75.  
  76. QUIT:
  77.  
  78.     ON ERROR GOTO ERRQUIT
  79.  
  80.     IF ERR = 0 THEN
  81.     dlg% = EXITSUCCESS
  82.     ELSEIF ERR = STFQUIT THEN
  83.     dlg% = EXITQUIT
  84.     ELSE
  85.     dlg% = EXITFAILURE
  86.     END IF
  87. QUITL1:
  88.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  89.     IF sz$ = "REACTIVATE" THEN
  90.     GOTO QUITL1
  91.     END IF
  92.     UIPop 1
  93.  
  94.     END
  95.  
  96. ERRQUIT:
  97.     UIPop 1
  98.     i% = DoMsgBox("Installation Incomplete!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  99.     END
  100.  
  101. BADPATH:
  102.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  103.     IF sz$ = "REACTIVATE" THEN
  104.     GOTO BADPATH
  105.     END IF
  106.     UIPop 1
  107.     RETURN
  108.  
  109. ASKQUIT:
  110.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  111.  
  112.     IF sz$ = "EXIT" THEN
  113.     UIPopAll
  114.     ERROR STFQUIT
  115.     ELSEIF sz$ = "REACTIVATE" THEN
  116.     GOTO ASKQUIT
  117.     ELSE
  118.     UIPop 1
  119.     END IF
  120.     RETURN
  121.  
  122.  
  123. CREATEICONS:
  124. ' The following installs the SWMC icon
  125.  
  126.     STARTUPDIR$ = GetSymbolValue("STF_SRCDIR")
  127.     NEWSTREE$ = STARTUPDIR$ + "SHARED"
  128.     NEWSEXE$ = "GEEK.exe"
  129.     ICONID$ = STARTUPDIR$ + "GEEK.ico, 0, 0, 0," + NEWSTREE$
  130.  
  131.     StartPath$ = FindFileInTree (NEWSEXE$, NEWSTREE$)
  132.  
  133.     IF StartPath$ <> "" THEN
  134.     CreateProgmanGroup "Sanctuary Woods", "", cmoNone
  135.     ShowProgmanGroup  "Sanctuary Woods", 1, cmoNone
  136.     CreateProgmanItem "Sanctuary Woods", "That's Geek To Me", StartPath$, ICONID$, cmoOverwrite
  137.  
  138.     UIPop 1
  139.     sz$ = UIStartDlg(CUIDLL$, INSTALLED, "FEditDlgProc", 0, "")
  140.     IF sz$ = "CONTINUE" THEN
  141.       UIPop 1
  142.       STARTUPDIR$ = GetSymbolValue("STF_SRCDIR")
  143.       x% = RunProgram("NOTEPAD.EXE " + STARTUPDIR$+"README.TXT")
  144.     END IF
  145.     ELSE
  146.     dm% = DoMsgBox ( "Can't find file GEEK.EXE",  "Install Error", MB_OK)
  147.     END IF
  148.   RETURN
  149.  
  150.  
  151. QUICKTIME:
  152.    DIM cbDir AS POINTER TO INTEGER
  153.    DIM cbVer AS POINTER TO INTEGER
  154.    DIM nV1 AS POINTER TO INTEGER
  155.    DIM nV2 AS POINTER TO INTEGER
  156.    DIM nV3 AS POINTER TO INTEGER
  157.    DIM nV4 AS POINTER TO INTEGER
  158.    ALLOCATE cbDir, 1
  159.    ALLOCATE cbVer, 1
  160.    ALLOCATE nV1, 1
  161.    ALLOCATE nV2, 1
  162.    ALLOCATE nV3, 1
  163.    ALLOCATE nV4, 1
  164.    cbDir[0] = 90
  165.    cbVer[0] = 90
  166.    szDir$ = "                                                                                        "
  167.    szVer$ = "                                                                                        "
  168.    x% = QTDetect ("QTim.DLL", szDir$, cbDir, szVer$, cbVer, nV1, nV2, nV3, nV4)
  169.  
  170. '   dm% = DoMsgBox (szDir$, szVer$, MB_OK)
  171.  
  172.    foo$ = GetVersionOfFile (szDir$+"\QTIM.DLL")
  173.  
  174. '   dm% = DoMsgBox (szDir$, foo$, MB_OK)
  175.  
  176.    flag% = 0
  177.    flag2% = 0
  178.  
  179.    IF x% = 0 THEN
  180.  
  181.           STARTUPDIR$ = GetSymbolValue("STF_SRCDIR")
  182.  
  183.           CopyFile STARTUPDIR$+"QTW\qcmc.qtc", szDir$+"\qcmc.qtc", cmoNone, 0
  184.           CopyFile STARTUPDIR$+"QTW\qtcvid.qtc", szDir$+"\qtcvid.qtc", cmoNone, 0
  185.           CopyFile STARTUPDIR$+"QTW\qthndlr.dll", szDir$+"\qthndlr.dll", cmoNone, 0
  186.           CopyFile STARTUPDIR$+"QTW\qtim.dll", szDir$+"\qtim.dll", cmoNone, 0
  187.           CopyFile STARTUPDIR$+"QTW\qtimcmgr.dll", szDir$+"\qtimcmgr.dll", cmoNone, 0
  188.           CopyFile STARTUPDIR$+"QTW\qtjpeg.qtc", szDir$+"\qtjpeg.qtc", cmoNone, 0
  189.           CopyFile STARTUPDIR$+"QTW\qtmovie.vbx", szDir$+"\qtmovie.vbx", cmoNone, 0
  190.           CopyFile STARTUPDIR$+"QTW\qtmsvc.qtc", szDir$+"\qtmsvc.qtc", cmoNone, 0
  191.           CopyFile STARTUPDIR$+"QTW\qtnotify.exe", szDir$+"\qtnotify.exe", cmoNone, 0
  192.           CopyFile STARTUPDIR$+"QTW\qtole.dll", szDir$+"\qtole.dll", cmoNone, 0
  193.           CopyFile STARTUPDIR$+"QTW\qtpic.vbx", szDir$+"\qtpic.vbx", cmoNone, 0
  194.           CopyFile STARTUPDIR$+"QTW\qtraw.qtc", szDir$+"\qtraw.qtc", cmoNone, 0
  195.           CopyFile STARTUPDIR$+"QTW\qtrle.qtc", szDir$+"\qtrle.qtc", cmoNone, 0
  196.           CopyFile STARTUPDIR$+"QTW\qtrpza.qtc", szDir$+"\qtrpza.qtc", cmoNone, 0
  197.           CopyFile STARTUPDIR$+"QTW\qtrt21.qtc", szDir$+"\qtrt21.qtc", cmoNone, 0
  198.           CopyFile STARTUPDIR$+"QTW\qtsmc.qtc", szDir$+"\qtsmc.qtc", cmoNone, 0
  199.           CopyFile STARTUPDIR$+"QTW\qtvhdw.dll", szDir$+"\qtvhdw.dll", cmoNone, 0
  200.           CopyFile STARTUPDIR$+"QTW\qtyvu9.qtc", szDir$+"\qtyvu9.qtc", cmoNone, 0
  201.    ENDIF
  202.  
  203.  
  204.    IF x% >= 2 THEN
  205.  
  206.     IF nV1[0] = 1 THEN
  207.        IF nV2[0] = 1 THEN
  208.           IF nV3[0] = 1 THEN
  209.          IF nV4[0] = 0 THEN
  210.             flag% = 1
  211.          ELSE
  212.             flag2% = 1
  213.          ENDIF
  214.           ELSE
  215.          IF nV3[0] > 1 THEN
  216.             flag2% = 1
  217.          ENDIF
  218.           ENDIF
  219.        ELSE
  220.           IF nV2[0] > 1 THEN
  221.          flag2% = 1
  222.           ENDIF
  223.        ENDIF
  224.     ELSE
  225.        IF nV1[0] > 1 THEN
  226.           flag2% = 1
  227.        ENDIF
  228.     ENDIF
  229.  
  230.     IF flag% = 0 THEN
  231.        IF flag2% = 1 THEN
  232.           dm% = DoMsgBox ("Setup has detected a newer version of QuickTime Installed.  See the readme file if you experience any problems.", "Dennis Miller - That's Geek To Me", MB_OK)
  233.        ELSE
  234.           dm% = DoMsgBox ("Setup has detected an older version of QuickTime for Windows!  Setup is backing up your old version and updating your system.", "Dennis Miller - That's Geek To Me", MB_OK)
  235.           szBackup$ = szDir$+"\dmgoldqt"
  236.  
  237.           IF DoesDirExist(szBackup$) = 0 THEN
  238.          CreateDir szBackup$, cmoNone
  239.           ENDIF
  240.  
  241.           IF DoesFileExist(szDir$+"\qcmc.qtc", femRead) = 1 THEN
  242.          CopyFile szDir$+"\qcmc.qtc", szBackup$+"\qcmc.qtc", cmoNone, 0
  243.          RemoveFile szDir$+"\qcmc.qtc", cmoForce
  244.           ENDIF
  245.  
  246.           IF DoesFileExist(szDir$+"\qtcvid.qtc", femRead) = 1 THEN
  247.          CopyFile szDir$+"\qtcvid.qtc", szBackup$+"\qtcvid.qtc", cmoNone, 0
  248.          RemoveFile szDir$+"\qtcvid.qtc", cmoForce
  249.           ENDIF
  250.  
  251.           IF DoesFileExist(szDir$+"\navg.qtc", femRead) = 1 THEN
  252.          CopyFile szDir$+"\navg.qtc", szBackup$+"\qtcvid.qtc", cmoNone, 0
  253.          RemoveFile szDir$+"\navg.qtc", cmoForce
  254.           ENDIF
  255.  
  256.           IF DoesFileExist(szDir$+"\qthndlr.dll", femRead) = 1 THEN
  257.          CopyFile szDir$+"\qthndlr.dll", szBackup$+"\qthndlr.dll", cmoNone, 0
  258.          RemoveFile szDir$+"\qthndlr.dll", cmoForce
  259.           ENDIF
  260.  
  261.           IF DoesFileExist(szDir$+"\qtim.dll", femRead) = 1 THEN
  262.          CopyFile szDir$+"\qtim.dll", szBackup$+"\qtim.dll", cmoNone, 0
  263.          RemoveFile szDir$+"\qtim.dll", cmoForce
  264.           ENDIF
  265.  
  266.           IF DoesFileExist(szDir$+"\qtimcmgr.dll", femRead) = 1 THEN
  267.          CopyFile szDir$+"\qtimcmgr.dll", szBackup$+"\qtimcmgr.dll", cmoNone, 0
  268.          RemoveFile szDir$+"\qtimcmgr.dll", cmoForce
  269.           ENDIF
  270.  
  271.           IF DoesFileExist(szDir$+"\qtjpeg.qtc", femRead) = 1 THEN
  272.          CopyFile szDir$+"\qtjpeg.qtc", szBackup$+"\qtjpeg.qtc", cmoNone, 0
  273.          RemoveFile szDir$+"\qtjpeg.qtc", cmoForce
  274.           ENDIF
  275.  
  276.           IF DoesFileExist(szDir$+"\qtmovie.vbx", femRead) = 1 THEN
  277.          CopyFile szDir$+"\qtmovie.vbx", szBackup$+"\qtmovie.vbx", cmoNone, 0
  278.          RemoveFile szDir$+"\qtmovie.vbx", cmoForce
  279.           ENDIF
  280.  
  281.           IF DoesFileExist(szDir$+"\qtmsvc.qtc", femRead) = 1 THEN
  282.          CopyFile szDir$+"\qtmsvc.qtc", szBackup$+"\qtmsvc.qtc", cmoNone, 0
  283.          RemoveFile szDir$+"\qtmsvc.qtc", cmoForce
  284.           ENDIF
  285.  
  286.           IF DoesFileExist(szDir$+"\qtnotify.exe", femRead) = 1 THEN
  287.          CopyFile szDir$+"\qtnotify.exe", szBackup$+"\qtnotify.exe", cmoNone, 0
  288.          RemoveFile szDir$+"\qtnotify.exe", cmoForce
  289.           ENDIF
  290.  
  291.           IF DoesFileExist(szDir$+"\qtole.dll", femRead) = 1 THEN
  292.          CopyFile szDir$+"\qtole.dll", szBackup$+"\qtole.dll", cmoNone, 0
  293.          RemoveFile szDir$+"\qtole.dll", cmoForce
  294.           ENDIF
  295.  
  296.           IF DoesFileExist(szDir$+"\qtpic.vbx", femRead) = 1 THEN
  297.          CopyFile szDir$+"\qtpic.vbx", szBackup$+"\qtpic.vbx", cmoNone, 0
  298.          RemoveFile szDir$+"\qtpic.vbx", cmoForce
  299.           ENDIF
  300.  
  301.           IF DoesFileExist(szDir$+"\qtraw.qtc", femRead) = 1 THEN
  302.          CopyFile szDir$+"\qtraw.qtc", szBackup$+"\qtraw.qtc", cmoNone, 0
  303.          RemoveFile szDir$+"\qtraw.qtc", cmoForce
  304.           ENDIF
  305.  
  306.           IF DoesFileExist(szDir$+"\qtrle.qtc", femRead) = 1 THEN
  307.          CopyFile szDir$+"\qtrle.qtc", szBackup$+"\qtrle.qtc", cmoNone, 0
  308.          RemoveFile szDir$+"\qtrle.qtc", cmoForce
  309.           ENDIF
  310.  
  311.           IF DoesFileExist(szDir$+"\qtrpza.qtc", femRead) = 1 THEN
  312.          CopyFile szDir$+"\qtrpza.qtc", szBackup$+"\qtrpza.qtc", cmoNone, 0
  313.          RemoveFile szDir$+"\qtrpza.qtc", cmoForce
  314.           ENDIF
  315.  
  316.           IF DoesFileExist(szDir$+"\qtrt21.qtc", femRead) = 1 THEN
  317.          CopyFile szDir$+"\qtrt21.qtc", szBackup$+"\qtrt21.qtc", cmoNone, 0
  318.          RemoveFile szDir$+"\qtrt21.qtc", cmoForce
  319.           ENDIF
  320.  
  321.           IF DoesFileExist(szDir$+"\qtsmc.qtc", femRead) = 1 THEN
  322.          CopyFile szDir$+"\qtsmc.qtc", szBackup$+"\qtsmc.qtc", cmoNone, 0
  323.          RemoveFile szDir$+"\qtsmc.qtc", cmoForce
  324.           ENDIF
  325.  
  326.           IF DoesFileExist(szDir$+"\qtvhdw.dll", femRead) = 1 THEN
  327.          CopyFile szDir$+"\qtvhdw.dll", szBackup$+"\qtvhdw.dll", cmoNone, 0
  328.          RemoveFile szDir$+"\qtvhdw.dll", cmoForce
  329.           ENDIF
  330.  
  331.           IF DoesFileExist(szDir$+"\qtyvu9.qtc", femRead) = 1 THEN
  332.          CopyFile szDir$+"\qtyvu9.qtc", szBackup$+"\qtyvu9.qtc", cmoNone, 0
  333.          RemoveFile szDir$+"\qtyvu9.qtc", cmoForce
  334.           ENDIF
  335.  
  336.           STARTUPDIR$ = GetSymbolValue("STF_SRCDIR")
  337.  
  338.           CopyFile STARTUPDIR$+"QTW\qcmc.qtc", szDir$+"\qcmc.qtc", cmoNone, 0
  339.           CopyFile STARTUPDIR$+"QTW\qtcvid.qtc", szDir$+"\qtcvid.qtc", cmoNone, 0
  340.           CopyFile STARTUPDIR$+"QTW\qthndlr.dll", szDir$+"\qthndlr.dll", cmoNone, 0
  341.           CopyFile STARTUPDIR$+"QTW\qtim.dll", szDir$+"\qtim.dll", cmoNone, 0
  342.           CopyFile STARTUPDIR$+"QTW\qtimcmgr.dll", szDir$+"\qtimcmgr.dll", cmoNone, 0
  343.           CopyFile STARTUPDIR$+"QTW\qtjpeg.qtc", szDir$+"\qtjpeg.qtc", cmoNone, 0
  344.           CopyFile STARTUPDIR$+"QTW\qtmovie.vbx", szDir$+"\qtmovie.vbx", cmoNone, 0
  345.           CopyFile STARTUPDIR$+"QTW\qtmsvc.qtc", szDir$+"\qtmsvc.qtc", cmoNone, 0
  346.           CopyFile STARTUPDIR$+"QTW\qtnotify.exe", szDir$+"\qtnotify.exe", cmoNone, 0
  347.           CopyFile STARTUPDIR$+"QTW\qtole.dll", szDir$+"\qtole.dll", cmoNone, 0
  348.           CopyFile STARTUPDIR$+"QTW\qtpic.vbx", szDir$+"\qtpic.vbx", cmoNone, 0
  349.           CopyFile STARTUPDIR$+"QTW\qtraw.qtc", szDir$+"\qtraw.qtc", cmoNone, 0
  350.           CopyFile STARTUPDIR$+"QTW\qtrle.qtc", szDir$+"\qtrle.qtc", cmoNone, 0
  351.           CopyFile STARTUPDIR$+"QTW\qtrpza.qtc", szDir$+"\qtrpza.qtc", cmoNone, 0
  352.           CopyFile STARTUPDIR$+"QTW\qtrt21.qtc", szDir$+"\qtrt21.qtc", cmoNone, 0
  353.           CopyFile STARTUPDIR$+"QTW\qtsmc.qtc", szDir$+"\qtsmc.qtc", cmoNone, 0
  354.           CopyFile STARTUPDIR$+"QTW\qtvhdw.dll", szDir$+"\qtvhdw.dll", cmoNone, 0
  355.           CopyFile STARTUPDIR$+"QTW\qtyvu9.qtc", szDir$+"\qtyvu9.qtc", cmoNone, 0
  356.        ENDIF
  357.     ENDIF
  358.    ENDIF
  359.    RETURN
  360.  
  361. INSTALL:
  362.    GOSUB QUICKTIME
  363.    GOSUB CREATEICONS
  364.  
  365.  
  366. '* Exit setup.
  367.   END
  368.  
  369. END
  370.